package com.googlecode.adaboost;

import com.googlecode.adaboost.classifier.WeakClassifier;
import com.googlecode.adaboost.trainer.DataElement;
import com.googlecode.adaboost.trainer.TrainingData;

public interface AdaBoostEngine {

	public void addWeakClassifier(WeakClassifier classifier);

	public double run(DataElement data);

	/**
	 * 
	 * @param trainingData
	 * @param outputs
	 * @return errorRate
	 */
	public double runAll(TrainingData trainingData, double[] outputs);

	public void dumpClassifier(int index);

	public void dumpClassifiers();

	public void save(String fileName);

	public void load(String fileName);
}
